#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    // 1. 先创建一个菜单栏
    // QMenuBar* menuBar = new QMenuBar();
    QMenuBar* menuBar = this->menuBar(); // 这样写规范
    this->setMenuBar(menuBar);

    // 2. 创建菜单 (还可以加 快捷键 (&))
    QMenu* menu1 = new QMenu("文件(&A)");
    QMenu* menu2 = new QMenu("编辑(&B)");
    QMenu* menu3 = new QMenu("视图");
    menuBar->addMenu(menu1);
    menuBar->addMenu(menu2);
    menuBar->addMenu(menu3);

   // 3. 给菜单添加菜单项
   QAction* action1 = new QAction("新建(&A)");
   QAction* action2 = new QAction("打开");
   QAction* action3 = new QAction("保存");
   QAction* action4 = new QAction("另存为");
   QAction* action5 = new QAction("退出(&D)");
   menu1->addAction(action1);
   menu1->addAction(action2);
   menu1->addAction(action3);
   menu1->addSeparator(); // 在保存和另存为中添加分割线
   menu1->addAction(action4);
   menu1->addAction(action5);

   // 4. 给 action 添加信号槽 -- 快捷键演示最好绑定槽函数，不然演示没现象
   connect(action1, &QAction::triggered, this, &MainWindow::handle);

   // 5. 添加图片
   menu1->setIcon(QIcon(":/qs_bao.png"));
   action3->setIcon(QIcon(":/qs_bao.png"));
}

void MainWindow::handle()
{
    qDebug() << "触发新建操作!!!";
}


MainWindow::~MainWindow()
{
    delete ui;
}



